package com.hlkj.pay.infrastructure.model.merchant;

import java.math.BigDecimal;

import com.baomidou.mybatisplus.annotation.TableName;
import com.hlkj.framework.mybatis.core.dataobject.BaseDO;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;

/**
* 代理信息
* @TableName t_agent_info
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode(callSuper = true)
@TableName("t_agent_info")
public class AgentInfoDO extends BaseDO {

    /**
    * 代理sn
    */
    @Schema(description = "代理sn")
    private String sn;
    /**
    * 发展下级代理权限 0 关闭 1 开启
    */
    @Schema(description = "发展下级代理权限 0 关闭 1 开启")
    private Integer lowerAgentStatus;
    /**
    * 发展下级商户权限 0 关闭 1 开启
    */
    @Schema(description = "发展下级商户权限 0 关闭 1 开启")
    private Integer lowerMerchantStatus;
    /**
    * 分润比例
    */
    @Schema(description = "分润比例")
    private BigDecimal profitRate;
    /**
    * 是否发送开通提醒 0 否 1 是
    */
    @Schema(description = "是否发送开通提醒 0 否 1 是")
    private Integer openStatus;
    /**
    * 密码设置 0 随机密码 1 自定义密码
    */
    @Schema(description = "密码设置 0 随机密码 1 自定义密码")
    private Integer passwordType;
    /**
    * 自定义密码
    */
    @Schema(description = "自定义密码")
    private String password;
    /**
    * 结算卡正面or 对公开户证明
    */
    @Schema(description = "结算卡正面or 对公开户证明")
    private String settleCardFrontUrl;
    /**
    * 结算卡账号类型 0：对公账户 1：对私账户 
    */
    @Schema(description = "结算卡账号类型 0：对公账户 1：对私账户 ")
    private Integer accountType;
    /**
    * 结算卡号
    */
    @Schema(description = "结算卡号")
    private String cardNo;
    /**
    * 结算银行名称
    */
    @Schema(description = "结算银行名称")
    private String bankName;
    /**
    * 结算银行支行
    */
    @Schema(description = "结算银行支行")
    private String branchName;
    /**
    * 结算银行联行号
    */
    @Schema(description = "结算银行联行号")
    private String branchCode;
    /**
    * 结算银行开户省市
    */
    @Schema(description = "结算银行开户省市")
    private String bankAreaName;

    /**
     * 余额是否拦截，1拦截，0不拦截
     */
    @Schema(description = "余额是否拦截，1拦截，0不拦截")
    private Integer blockBal;

}
